Adopting data across different sites

ABSTRACT

Systems and methods of adopting data across different sites are disclosed. In some example embodiments, a data adoption system configures a first networked site to adopt data from one or more other networked sites, detects new data on the other networked site(s), with the new data being associated with a data item on the other networked site(s), determines that a record of the data item is being stored on the first networked site, and stores the new data from the other networked site(s) on the first networked site in association with the data item based on the detecting of the new data on the other networked site(s) and the determining that a record of the data item is being stored on the first networked site.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims the benefit of priority, under 35 U.S.C. Section119(e), to U.S. Provisional Application No. 62/323,472, filed on Apr.15, 2016, entitled, “MANAGING DATA FOR PEER SITES”, which is herebyincorporated by reference in its entirety as if set forth herein.

TECHNICAL FIELD

Embodiments of the present disclosure relate to systems and methods ofadopting data across different networked sites.

BACKGROUND

Limited availability of data can hinder the ability of a networked site(e.g., a website) to provide services to its users. For example,currently, in situations where a local site adopts and displays one typeof information about or for a data item from a peer site, other types ofinformation about or for the data item may not be displayed or otherwisemade available on the local site, as the local site may only provide theother types of information for data items that originated on the localsite. This data deficiency impacts sites whose inventory is primarilyfrom another site or imported (e.g., by GSP or CBT). As a result of thisdata deficiency, the usability of these other sites is reduced, as itbecomes more difficult for users to find information.

BRIEF DESCRIPTION OF THE DRAWINGS

Some embodiments of the present disclosure are illustrated by way ofexample and not limitation in the figures of the accompanying drawings,in which like reference numbers indicate similar elements.

FIG. 1 is a block diagram illustrating a networked system, in accordancewith some example embodiments.

FIG. 2 is a block diagram illustrating various components of anetwork-based publication system, in accordance with some exampleembodiments.

FIG. 3 is a block diagram illustrating various tables that can bemaintained within a database, in accordance with some exampleembodiments.

FIG. 4 illustrates a user interface (UI) displaying selectable useroptions for a seller of an item listing to use a global shipping programor cross-border trade, in accordance with some example embodiments.

FIG. 5 is a block diagram illustrating different peer sites, inaccordance with some example embodiments.

FIG. 6 illustrates a UI displaying product reviews for a product on asite, in accordance with some example embodiments.

FIG. 7 is a block diagram illustrating components of a data adoptionsystem, in accordance with some example embodiments.

FIGS. 8A-8B illustrate a change in data on a local site based on dataadopted from a peer site, in accordance with some example embodiments.

FIG. 9 illustrates a table of product reviews by a single useraggregated from different sites, in accordance with some exampleembodiments.

FIG. 10 illustrates a UI displaying a single user's product reviewsaggregated from different sites, in accordance with some exampleembodiments.

FIG. 11 illustrates a UI displaying a mobile page configured to enable auser to edit a product review, in accordance with some exampleembodiments.

FIG. 12 illustrates a UI displaying a non-mobile page configured toenable a user to edit a product review, in accordance with some exampleembodiments.

FIG. 13 is a flowchart illustrating a method of adopting data acrossdifferent sites, in accordance with some example embodiments.

FIG. 14 is a flowchart illustrating a method of using adopted data, inaccordance with some example embodiments.

FIG. 15 is a block diagram illustrating a mobile device, in accordancewith some example embodiments.

FIG. 16 is a block diagram illustrating a representative softwarearchitecture, in accordance with some example embodiments.

FIG. 17 is a diagrammatic representation of a machine in the form of acomputer system within which a set of instructions may be executed forcausing the machine to perform any one or more of the methodologiesdiscussed herein, according to an example embodiment.

DETAILED DESCRIPTION

The description that follows includes illustrative systems, methods,techniques, instruction sequences, and computing machine programproducts that embody illustrative embodiments. In the followingdescription, for purposes of explanation, numerous specific details areset forth in order to provide an understanding of various embodiments ofthe inventive subject matter. It will be evident, however, to thoseskilled in the art that embodiments of the inventive subject matter canbe practiced without these specific details. In general, well-knowninstruction instances, protocols, structures, and techniques have notbeen shown in detail.

The present disclosure provides technical solutions for adopting dataacross different sites (e.g. websites). In some example embodiments, alocal site is configured to adopt data from one or more peer sites. Forexample, a site administrator can configure a website to adopt data fromcorresponding international versions of the website, such as a U.S. sitebeing configured to adopt product reviews and other data from acorresponding Canadian site, a corresponding United Kingdom site, and acorresponding German site. As a result, when a product review isgenerated, stored, and published for a product on any one of thecorresponding Canadian, United Kingdom, and German sites, that productreview can be adopted by the United States site for the same productlisted on the United States site, such that the adopted product reviewwill be published on the United States site in association with thatproduct.

The term “local site” is used herein to refer to any site that adoptsdata (e.g., an item listing or a product review) from another site. Theterm “peer site” is used herein to refer to any site from which data isadopted by another site. An online site can be both a local site and apeer site, depending on the context in which the online site is beingdiscussed (e.g., whether the online site is adopting data from anothersite or another site is adopting data from the online site).

In some example embodiments, operations are performed by a machinehaving a memory and at least one hardware processor, with the operationscomprising configuring a first networked site to adopt data from one ormore other networked sites different from the first networked site,detecting new data on at least one of the one or more other networkedsites, with the new data being associated with a data item on the atleast one of the one or more other networked sites, determining that arecord of the data item is being stored on the first networked site, andstoring the new data from the at least one of the one or more othernetworked sites on the first networked site in association with the dataitem based on the detecting of the new data on the at least one of theone or more other networked sites and the determining that a record ofthe data item is being stored on the first networked site. In someexample embodiments, the data item is a product identification.

In some example embodiments, the first networked site and each one ofthe one or more other networked sites has a corresponding top-leveldomain, the top-level domain of each one of the one or more othernetworked sites being different from the top-level domain of the firstnetworked site. In some example embodiments, the top-level domain ofeach one of the one or more other networked sites corresponds to adifferent country than the top-level domain of the first networked site.

In some example embodiments, the operations further comprise receiving,from a computing device of a user accessing the first networked site, arequest to view information about the data item, retrieving the new datastored on the first networked site in association with the data item,and displaying the retrieved new data on the first networked site. Insome example embodiments, the operations further comprise determining atype of page on which the new data is displayed on the at least one ofthe one or more other networked sites, the retrieved new data beingdisplayed on the same type of page on the first networked site. In someexample embodiments, the operations further comprise determining aposition in which to display the retrieved new data on the firstnetworked site, the position being based at least in part on the newdata having originated from the at least one of the one or more othernetworked sites, and displaying the retrieved new data in the determinedposition on the first networked site.

In some example embodiments, the new data comprises a review of theproduct. In some example embodiments, the operations further comprisereceiving, by the first networked site from a user on a computing deviceaccessing the first networked site, a request to submit a new review ofa product, determining, by the first networked site, that the user haspreviously submitted a review of the product on one of the one or moreother networked sites, and based on the determining that the user haspreviously submitted the review of the product on the one of the one ormore other networked sites, preventing, by the first networked site, theuser from submitting the new review of the product. In some exampleembodiments, the operations further comprise displaying a prompting onthe first networked site for the user to edit the previously submittedreview based on the determining that the user has previously submittedthe review of the product on the one of the one or more other networkedsites.

In some example embodiments, the configuring the first networked site toadopt data from the one or more other networked sites comprisesconfiguring the first networked site to adopt data of a first type fromthe one or more other networked sites, and configuring the firstnetworked site not to adopt data of a second type from the one or moreother networked sites, the second type being different from the firsttype. In some example embodiments, the first type of data is a firsttype of product review and the second type of data is a second type ofproduct review.

The methods or embodiments disclosed herein can be implemented as acomputer system having one or more modules (e.g., hardware modules orsoftware modules). Such modules can be executed by one or more hardwareprocessors of the computer system. The methods or embodiments disclosedherein can be embodied as instructions stored on a machine-readablemedium that, when executed by one or more processors, cause the one ormore processors to perform the instructions.

With reference to FIG. 1, an example embodiment of a high-levelclient-server-based network architecture 100 is shown. A networkedsystem 102, in the example forms of a network-based marketplace orpayment system, provides server-side functionality via a network 104(e.g., the Internet or wide area network (WAN)) to one or more clientdevices 110. FIG. 1 illustrates, for example, a web client 112 (e.g., abrowser, such as the Internet Explorer® browser developed by Microsoft®Corporation of Redmond, Wash. State), an application 114, and aprogrammatic client 116 executing on client device 110.

The client device 110 may comprise, but are not limited to, a mobilephone, desktop computer, laptop, portable digital assistants (PDAs),smart phones, tablets, ultra books, netbooks, laptops, multi-processorsystems, microprocessor-based or programmable consumer electronics, gameconsoles, set-top boxes, or any other communication device that a usermay utilize to access the networked system 102. In some embodiments, theclient device 110 may comprise a display module (not shown) to displayinformation (e.g., in the form of user interfaces). In furtherembodiments, the client device 110 may comprise one or more of a touchscreens, accelerometers, gyroscopes, cameras, microphones, globalpositioning system (GPS) devices, and so forth. The client device 110may be a device of a user that is used to perform a transactioninvolving digital items within the networked system 102. In oneembodiment, the networked system 102 is a network-based marketplace thatresponds to requests for product listings, publishes publicationscomprising item listings of products available on the network-basedmarketplace, and manages payments for these marketplace transactions.One or more users 106 may be a person, a machine, or other means ofinteracting with client device 110. In embodiments, the user 106 is notpart of the network architecture 100, but may interact with the networkarchitecture 100 via client device 110 or another means. For example,one or more portions of network 104 may be an ad hoc network, anintranet, an extranet, a virtual private network (VPN), a local areanetwork (LAN), a wireless LAN (WLAN), a wide area network (WAN), awireless WAN (WWAN), a metropolitan area network (MAN), a portion of theInternet, a portion of the Public Switched Telephone Network (PSTN), acellular telephone network, a wireless network, a WiFi network, a WiMaxnetwork, another type of network, or a combination of two or more suchnetworks.

Each of the client device 110 may include one or more applications (alsoreferred to as “apps”) such as, but not limited to, a web browser,messaging application, electronic mail (email) application, ane-commerce site application (also referred to as a marketplaceapplication), and the like. In some embodiments, if the e-commerce siteapplication is included in a given one of the client device 110, thenthis application is configured to locally provide the user interface andat least some of the functionalities with the application configured tocommunicate with the networked system 102, on an as needed basis, fordata and/or processing capabilities not locally available (e.g., accessto a database of items available for sale, to authenticate a user, toverify a method of payment, etc.). Conversely if the e-commerce siteapplication is not included in the client device 110, the client device110 may use its web browser to access the e-commerce site (or a variantthereof) hosted on the networked system 102.

One or more users 106 may be a person, a machine, or other means ofinteracting with the client device 110. In example embodiments, the user106 is not part of the network architecture 100, but may interact withthe network architecture 100 via the client device 110 or other means.For instance, the user provides input (e.g., touch screen input oralphanumeric input) to the client device 110 and the input iscommunicated to the networked system 102 via the network 104. In thisinstance, the networked system 102, in response to receiving the inputfrom the user, communicates information to the client device 110 via thenetwork 104 to be presented to the user. In this way, the user caninteract with the networked system 102 using the client device 110.

An application program interface (API) server 120 and a web server 122are coupled to, and provide programmatic and web interfaces respectivelyto, one or more application servers 140. The application servers 140 mayhost one or more publication systems 142, payment systems 144, and dataadoption system 150, each of which may comprise one or more modules orapplications and each of which may be embodied as hardware, software,firmware, or any combination thereof. The application servers 140 are,in turn, shown to be coupled to one or more database servers 124 thatfacilitate access to one or more information storage repositories ordatabase(s) 126. In an example embodiment, the databases 126 are storagedevices that store information to be posted (e.g., publications orlistings) to the publication system 142. The databases 126 may alsostore digital item information in accordance with example embodiments.

Additionally, a third party application 132, executing on third partyserver(s) 130, is shown as having programmatic access to the networkedsystem 102 via the programmatic interface provided by the API server120. For example, the third party application 132, utilizing informationretrieved from the networked system 102, supports one or more featuresor functions on a website hosted by the third party. The third partywebsite, for example, provides one or more promotional, marketplace, orpayment functions that are supported by the relevant applications of thenetworked system 102.

The publication systems 142 may provide a number of publicationfunctions and services to users 106 that access the networked system102. The payment systems 144 may likewise provide a number of functionsto perform or facilitate payments and transactions. While thepublication system 142 and payment system 144 are shown in FIG. 1 toboth form part of the networked system 102, it will be appreciated that,in alternative embodiments, each system 142 and 144 may form part of apayment service that is separate and distinct from the networked system102. In some embodiments, the payment systems 144 may form part of thepublication system 142.

The data adoption system 150 provides functionality operable to performvarious data adoption operations, as will be discussed in further detailbelow. The data adoption system 150 may access the data from thedatabases 126, the third party servers 130, the publication system 142,and other sources. In some example embodiments, the data adoption system150 may analyze the data to perform data adoption operations. In someexample embodiments, the data adoption system 150 communicates with thepublication systems 142 (e.g., accessing item listings) and paymentsystem 144. In an alternative embodiment, the data adoption system 150is a part of the publication system 142.

Further, while the client-server-based network architecture 100 shown inFIG. 1 employs a client-server architecture, the present inventivesubject matter is of course not limited to such an architecture, andcould equally well find application in a distributed, or peer-to-peer,architecture system, for example. The various publication system 142,payment system 144, and data adoption system 150 could also beimplemented as standalone software programs, which do not necessarilyhave networking capabilities.

The web client 112 may access the various publication and paymentsystems 142 and 144 via the web interface supported by the web server122. Similarly, the programmatic client 116 accesses the variousservices and functions provided by the publication and payment systems142 and 144 via the programmatic interface provided by the API server120. The programmatic client 116 may, for example, be a sellerapplication (e.g., the Turbo Lister application developed by eBay® Inc.,of San Jose, Calif.) to enable sellers to author and manage listings onthe networked system 102 in an off-line manner, and to performbatch-mode communications between the programmatic client 116 and thenetworked system 102.

Additionally, a third party application(s) 132, executing on a thirdparty server(s) 130, is shown as having programmatic access to thenetworked system 102 via the programmatic interface provided by the APIserver 120. For example, the third party application 132, utilizinginformation retrieved from the networked system 102, may support one ormore features or functions on a website hosted by the third party. Thethird party website may, for example, provide one or more promotional,marketplace, or payment functions that are supported by the relevantapplications of the networked system 102.

FIG. 2 is a block diagram illustrating various components of thenetwork-based publication system 142, in accordance with some exampleembodiments. The publication system 142 can be hosted on dedicated orshared server machines that are communicatively coupled to enablecommunications between server machines. The components themselves arecommunicatively coupled (e.g., via appropriate interfaces) to each otherand to various data sources, so as to allow information to be passedbetween the components or so as to allow the components to share andaccess common data. Furthermore, the components can access one or moredatabases 126 via the database servers 124.

The publication system 142 can provide a number of publishing, listing,and/or price-setting mechanisms whereby a seller (also referred to as afirst user) can list (or publish information concerning) goods orservices for sale or barter, a buyer (also referred to as a second user)can express interest in or indicate a desire to purchase or barter suchgoods or services, and a transaction (such as a trade) can be completedpertaining to the goods or services. To this end, the publication system142 can comprise at least one publication engine 202 and one or moreselling engines 204. The publication engine 202 can publish information,such as item listings or product description pages, on the publicationsystem 142. In some embodiments, the selling engines 204 can compriseone or more fixed-price engines that support fixed-price listing andprice setting mechanisms and one or more auction engines that supportauction-format listing and price setting mechanisms (e.g., English,Dutch, Chinese, Double, Reverse auctions, etc.). The various auctionengines can also provide a number of features in support of theseauction-format listings, such as a reserve price feature whereby aseller can specify a reserve price in connection with a listing and aproxy-bidding feature whereby a bidder can invoke automated proxybidding. The selling engines 204 can further comprise one or more dealengines that support merchant-generated offers for products andservices.

A listing engine 206 allows sellers to conveniently author listings ofitems or authors to author publications. In one embodiment, the listingspertain to goods or services that a user (e.g., a seller) wishes totransact via the publication system 142. In some embodiments, thelistings can be an offer, deal, coupon, or discount for the good orservice. Each good or service is associated with a particular category.The listing engine 206 can receive listing data such as title,description, and aspect name/value pairs. Furthermore, each listing fora good or service can be assigned an item identifier. In otherembodiments, a user can create a listing that is an advertisement orother form of information publication. The listing information can thenbe stored to one or more storage devices coupled to the publicationsystem 142 (e.g., databases 126). Listings also can comprise productdescription pages that display a product and information (e.g., producttitle, specifications, and reviews) associated with the product. In someembodiments, the product description page can include an aggregation ofitem listings that correspond to the product described on the productdescription page.

The listing engine 206 can also allow buyers to conveniently authorlistings or requests for items desired to be purchased. In someembodiments, the listings can pertain to goods or services that a user(e.g., a buyer) wishes to transact via the publication system 142. Eachgood or service is associated with a particular category. The listingengine 206 can receive as much or as little listing data, such as title,description, and aspect name/value pairs, that the buyer is aware ofabout the requested item. In some embodiments, the listing engine 206can parse the buyer's submitted item information and can completeincomplete portions of the listing. For example, if the buyer provides abrief description of a requested item, the listing engine 206 can parsethe description, extract key terms, and use those terms to make adetermination of the identity of the item. Using the determined itemidentity, the listing engine 206 can retrieve additional item detailsfor inclusion in the buyer item request. In some embodiments, thelisting engine 206 can assign an item identifier to each listing for agood or service.

In some embodiments, the listing engine 206 allows sellers to generateoffers for discounts on products or services. The listing engine 206 canreceive listing data, such as the product or service being offered, aprice and/or discount for the product or service, a time period forwhich the offer is valid, and so forth. In some embodiments, the listingengine 206 permits sellers to generate offers from the sellers' mobiledevices. The generated offers can be uploaded to the publication system142 for storage and tracking.

Searching the publication system 142 is facilitated by a searchingengine 208. For example, the searching engine 208 enables keywordqueries of listings published via the publication system 142. In exampleembodiments, the searching engine 208 receives the keyword queries froma device of a user and conducts a review of the storage device storingthe listing information. The review will enable compilation of a resultset of listings that can be sorted and returned to the client device 110of the user. The searching engine 208 can record the query (e.g.,keywords) and any subsequent user actions and behaviors (e.g.,navigations).

The searching engine 208 also can perform a search based on the locationof the user. A user can access the searching engine 208 via a mobiledevice and generate a search query. Using the search query and theuser's location, the searching engine 208 can return relevant searchresults for products, services, offers, auctions, and so forth to theuser. The searching engine 208 can identify relevant search results bothin a list form and graphically on a map. Selection of a graphicalindicator on the map can provide additional details regarding theselected search result. In some embodiments, the user can specify aspart of the search query a radius or distance from the user's currentlocation to limit search results.

The searching engine 208 also can perform a search based on an image.The image can be taken from a camera or imaging component of a clientdevice or can be accessed from storage.

In a further example, a navigation engine 210 allows users to navigatethrough various categories, catalogs, or inventory data structuresaccording to which listings can be classified within the publicationsystem 142. For example, the navigation engine 210 allows a user tosuccessively navigate down a category tree comprising a hierarchy ofcategories (e.g., the category tree structure) until a particular set oflistings is reached. Various other navigation applications within thenavigation engine 210 can be provided to supplement the searching andbrowsing applications. The navigation engine 210 can record the varioususer actions (e.g., clicks) performed by the user in order to navigatedown the category tree.

FIG. 3 is a high-level entity-relationship diagram, illustrating varioustables 300 that can be maintained within the database(s) 126, and thatare utilized by and support the systems 142, 144, and 150. A user table302 contains a record for each registered user of the networked system102, and can include identifier, address and financial instrumentinformation pertaining to each such registered user. A user can operateas a seller, a buyer, or both, within the networked system 102. In oneexample embodiment, a buyer can be a user that has accumulated value(e.g., commercial or proprietary currency), and is accordingly able toexchange the accumulated value for items that are offered for sale bythe networked system 102.

The tables 300 also include an items table 304 in which are maintaineditem records for goods and services that are available to be, or havebeen, transacted via the networked system 102. Each item record withinthe items table 304 can furthermore be linked to one or more userrecords within the user table 302, so as to associate a seller and oneor more actual or potential buyers with each item record.

A transaction table 306 contains a record for each transaction (e.g., apurchase or sale transaction) pertaining to items for which recordsexist within the items table 304.

An order table 308 is populated with order records, with each orderrecord being associated with an order. Each order, in turn, can beassociated with one or more transactions for which records exist withinthe transaction table 306.

Bid records within a bids table 310 each relate to a bid received at thenetworked system 102 in connection with an auction-format listingsupported by an auction application. A feedback table 312 is utilized byone or more reputation applications, in one example embodiment, toconstruct and maintain reputation information concerning users. Ahistory table 314 maintains a history of transactions to which a userhas been a party. One or more attributes tables 316 record attributeinformation pertaining to items for which records exist within the itemstable 304. Considering only a single example of such an attribute, theattributes tables 316 can indicate a currency attribute associated witha particular item, with the currency attribute identifying the currencyof a price for the relevant item as specified by a seller.

In some example embodiments, the tables 300 also include a productstable 318 in which are maintained product records for goods and servicesthat are available to be, or have been, transacted via the networkedsystem 102. Each product record within the products table 318 canfurthermore be linked to one or more user records within the user table302, so as to associate a seller and one or more actual or potentialbuyers with each item record. In some example embodiments, a reviewstable 320 is utilized by one or more review applications, in one exampleembodiment, to construct and maintain reviews concerning products. Suchproduct reviews can be authored and submitted by users and can include,but are not limited to, text-based information describing a user'sexperience with the corresponding product, as well as one or moreuser-submitted ratings of the product, such as one or more graphicaluser interface elements that represent a rating (e.g., a star-basedratings system).

In some example embodiments, the data adoption system 150 is configuredto aggregate, at a product identification (ID) level, product reviewsentered and submitted for item listings. Product reviews aredistinguished from seller reviews and buyers reviews in that productreviews are directed towards and meant to review a product, not a selleror a buyer. Accordingly, each product review can be associated in adatabase with a corresponding product (e.g., a corresponding productID), such that all of the product reviews for a specific product can beaggregated and displayed in response to a request for product reviewsfor that specific product, as opposed to a request for reviews of aseller or a buyer.

In some example embodiments, mirror sites, such as websites thatreplicate and display item listings from another site, comprise the samecatalog structure and product IDs as the other site from which the itemlisting is replicated.

Another situation when an item listing is adopted by an online site(local site) from another site (peer site) is when a global shippingprogram (GSP) is implemented by the peer site and selected by the sellerof an item listing on the peer site, such as by the seller selecting aGSP option during the creation of the item listing for the peer site.When the seller selects the GSP option during item listing creationflow, it means that the seller will ship the item of the item listing toa local location, where the item will then be shipped by another partyor entity (e.g., an agent of the parent site) to another country if thebuyer is located in the other country, thus assisting the seller inselling and delivering the item to a buyer in a foreign country.Accordingly, this GSP-enabled item listing is published on all localsites that the GSP is supported on in addition to the original peer siteon which the item listing was created, thereby reaching a greater poolof potential buyers than if the item listing was only published on theseller's peer site.

Another situation when an item listing is adopted by an online site(local site) from another site (peer site) is when cross-border trade(CBT) is implemented, where a seller of an item listing specificallyselects the foreign countries that the seller will be responsible toship to if there is a buyer from there. In that case, the item listingis published on those specific local sites (e.g., foreign sites)corresponding to the selected foreign countries, in addition to beingpublished on the peer site from which the item listing originated.

FIG. 4 illustrates a UI 400 displaying selectable user options 410 and420 for a seller of an item listing to use a global shipping program(GSP) or a cross-border trade (CBT) feature, respectively, in accordancewith some example embodiments. In some example embodiments, selectableuser options 410 and 420 comprise checkboxes, as shown in FIG. 4.However, other types of selectable UI elements are also within the scopeof the present disclosure.

FIG. 5 is a block diagram illustrating peer sites, in accordance withsome example embodiments. In some example embodiments, a peer sitecomprises a networked or online site (e.g., a website) that adopts datafrom another networked or online site, such as based on the GSP or CBTmechanisms discussed above, thus acting as a local site. In FIG. 5, siteA 510, online site B 512, online site C 514, and online site D 516 arecommunicatively coupled to one another, such as via one or more networks104. Each one of these online sites 510, 512, 514, and 516 comprises anetwork-based marketplace, such the network-based marketplace ofnetworked system 102 in FIG. 1. Although, it is contemplated that eachof the online sites 510, 512, 514, and 516 may comprise other types ofsites as well, not just a network-based marketplace. Each one of theseonline sites 510, 512, 514, and 516 may comprise its own data adoptionsystem 150, or may employ the functions of the data adoption system 150residing on another one of the sites. In some example embodiments, eachof the sites 510, 512, 514, and 516 have a corresponding top-leveldomain, and the top-level domain of each one of the sites 510, 512, 514,and 516 is different from the top-level domain of other sites. In someexample embodiments, these online sites are foreign versions of oneanother, and the top-level domain of each of the online sitescorresponds to a different country than the top-level domain of theother online site. For example, site A 510 may comprise a U.S. site(e.g., www.ebay.com), site B 512 may comprise a Canadian site (e.g.,www.ebay.ca), site C 514 may comprise a United Kingdom site (e.g.,www.ebay.co.uk), and site D 516 may comprise a German site (e.g.,www.ebay.de). As previously discussed, any one of these sites can adoptor inherit data, such as item listings, that originated from another oneof the sites. Although FIG. 5 shows four different sites, it iscontemplated that the features disclosed herein can be employed with anynumber of sites.

Currently, reviews submitted on a peer site for an item listingoriginating from that peer site are not published or otherwise madeavailable on the local sites that adopt the item listing of that peersite. For example, in a scenario where an iPhone is originally listed inthe U.S. on site A 510 with a GSP or CBT functionality option havingbeen selected, the product reviews corresponding to that iPhone arepublished or otherwise made available for the item listing on the U.S.site A 510, but not published or otherwise made available for thecorresponding item listing published outside of the U.S., such in Canadaon site B 512, in the United Kingdom on site C 514, or in Germany onsite D 516. As a result, the product reviews corresponding to thatiPhone that were submitted on the U.S. website are shown for thecorresponding listings for that iPhone on the U.S. website, but notshown for the corresponding listings visible outside the U.S. (e.g., onthe peer Canadian, United Kingdom, and German websites).

In some example embodiments, the data adoption system 150 is configuredto publish or otherwise make available, on local sites, product reviewsfor item listings that originate from a peer site. In some exampleembodiments, the data adoption system 150 ensures that item listingsthat are available internationally or part of mirror sites are able todisplay reviews for item listings that map to those products or productIDs of those item listings that originated from the peer site. In someexample embodiments, each local site can determine whether it willinclude reviews written, or otherwise submitted, on another site forreplication-causing item listings (e.g., GSP or CBT item listings).

The features of the data adoption system 150 are particularly useful intwo use cases. Although, other use cases are also within the scope ofthe present disclosure. The first use case involves an item listing on apeer site, where the item listing has visibility outside of the originalparent site, such as a UK item listing with CBT to Canada and Germany.In some example embodiments, if a product review is written for thatproduct ID (the product ID corresponding to the item listing) in Germanyor Canada, then the UK site can decide if it will include the productreview on the UK site. In some example embodiments, the data adoptionsystem 150 provides a filter where each site can specify the sites onwhich reviews were written for that product ID that the site willinclude. For example, the UK site can specify that it will only includereviews written on Canadian site (if any for that product ID), in whichcase, reviews on the UK site and reviews on the Canadian site will bepublished or otherwise made available on the UK site.

The second use case involves item listings from other sites withvisibility on their site, such as a German site displaying item listingsfrom a UK site (e.g., due to CBT or GSP). In this case, the German sitecan determine whether to display or otherwise make available reviewswritten on the UK site or just limit its publishing of reviews toreviews written on its site, which can be configured to be the defaultbehavior absent any other configuration to the contrary. Other use casesare also within the scope of the present disclosure.

In some example embodiments, product reviews may comprise, but are notlimited to, text-based information describing a user's experience withthe corresponding product, user-submitted ratings of the product (e.g.,a star-based ratings system), or an image representing a percentage ofusers who have answered affirmatively to a user feedback question forthe corresponding product (e.g., a radial graph showing that 40% agreethat the battery life of the product meets expectations). Other types ofproduct reviews are also within the scope of the present disclosure.

FIG. 6 illustrates a UI 600 displaying product reviews 605 for a producton a site, in accordance with some example embodiments. In FIG. 6, anitem listing for the product is displayed in the UI 600, and the productis a “Vizio 50″ E500i-B1 Slim Frame LED Smart HD TV” Each product review605 may comprise one or more aspects of the review, including, but notlimited to, a rating 610 (e.g., a star-based rating), a text-basedreview headline 612, and a text-based review 614. Each product review605 may also comprise an indication 616 of the author of the review andthe date on which the review was authored or submitted to thecorresponding site. Each product review 605 may also comprise anindication 618 of the site on which the product review 605 wasoriginally authored or submitted. For example, the UI 600 in FIG. 6shows three different product reviews, with one review originating froma U.S. site (www.ebay.com), one review originating from a correspondingCanadian site (www.ebay.ca), and one review originating from acorresponding German site (www.ebay.de), thereby providing anaggregation of product reviews from different sites for the same productto the user.

In some example embodiments, the data adoption system 150 is configuredto present all of the product reviews authored or submitted by a useracross all of the peer sites to that user on a single one of thosesites, such as when the user logs into one of the sites and submits arequest to associated with viewing all of the product reviews. In onescenario using the example embodiments of FIG. 5, a user who hassubmitted product reviews on site A 510, on site B 512, on site C 514,and on site D 516 can be presented with all of those product reviewswhen logging into site A 510 and viewing his or her profile. Forexample, the user's profile page on any one of these sites can display,or otherwise present, all of the user's product reviews to the user,thereby eliminating the burden on the user of having to log into eachdifferent site individually to view and manage their product reviews.

In some example embodiments, each site can have its own configurationspecifying from which other sites to adopt or replicate the productreviews (or other data). For example, the data adoption system 150 canbe configured to enable an administrator of a site to provide aconfiguration for adopting or replicating the product reviews from othersites, such as by generating a configuration file. In some exampleembodiments, the data adoption system 150 is configured to enable theadministrator to set up separate configurations for different aspects orparts of a product review. For example, the administrator can set up oneconfiguration for the text-based review portion (e.g., the text-basedreview headline 612 and the text-based review 614 in FIG. 6), andanother configuration for the ratings portion (e.g., star-based rating610 in FIG. 6).

For the configuration for the text-based review portion, theadministrator can provide the list of sites from which text-basedreviews are authored or submitted that the administrator's site willpresent if the administrator's site has an item listing with a productID for which text-based reviews have been authored or submitted on thosesites. For example, the administrator of a UK site can specify that theUK site will adopt the text-based review portions of any product reviewsfrom a U.S. site and any product reviews from a Canadian site, such thatthe UK site will show reviews written in the U.S. (e.g., on the U.S.site) and reviews written in Canada (e.g., on the Canadian site) inaddition to reviews written in the UK (e.g., on the UK site) if any areavailable for a product ID of an item listing on the UK site.

Similarly, for the configuration for the ratings portion, theadministrator can provide the list of sites from which ratings-basedreviews are authored or submitted that the administrator's site willpresent if the administrator's site has an item listing with a productID for which ratings-based reviews have been authored or submitted onthose sites.

It is contemplated that the product reviews can be displayed on any partof the corresponding site, whether it is the site on which the productreview originated or the local site that adopted the product review. Forexample, the product reviews can be displayed on a “view item” page(e.g., a page of an item listing), on a “product review” page, on a“submit a review” page, on a “write a review” page, and so on. In someexample embodiments, the data adoption system 150 is configured to causethe adopted or replicated product reviews to be presented on the localsite in the same location (e.g., the same type of page) as the for thepeer site from which the product reviews were adopted.

In some example embodiments, product reviews are boosted by the localsite locale. For example, on a U.S. site, product reviews originallyauthored or submitted on the U.S. site can be given preference in termsof their visibility (e.g., display position, such as where in a list ofproduce reviews a product review is positioned) over product reviewsadopted from other sites. A product review can also be boosted by otherfactors, such as its determined relevancy based on a relevancy logic(e.g., helpfulness of the product review, regency of the productreview).

In one example, a German site has a reviews configuration as includingreviews from the German site and reviews from a UK site, as well as aratings configuration as including ratings from the German site andreviews from the UK site. In this example, for a U.S. item listingmapped to a U.S. product ID which had 4 stars based on 10 ratings and 6reviews all of which were written on the U.S. site, where the itemlisting is visible on the German site (e.g., due to GSP or CBT), theGerman site will not show any of the product reviews from the U.S. site,as the configuration does not include the U.S. site as a site from whichto adopt reviews. In some example embodiments, the German site willinstead enable a user to be the first to write a product review on theGerman site for the corresponding product. When a user of the Germansite selects an option to be the first to write a review, since it isfor and based on a U.S. product ID and the U.S. site is not anacceptable site for the German site in the configuration, the U.S.reviews will not be shown to the user on the German site. Instead, theGerman site will only show reviews, ratings and aspects authored orsubmitted on the German site or the UK site and boosted by the Germansite.

In another example, a German site has a reviews configuration asincluding reviews from the German site, reviews from the UK site, andreviews from the U.S. site, as well as a ratings configuration asincluding ratings from the German site, ratings from the UK site, andratings from the U.S. site. In this example, for a U.S. item listingmapped to a U.S. product ID, where the U.S. item listing is visible onGerman site (e.g., due to GSP or CBT), if the U.S. product ID has 4stars based on 100 ratings and 60 reviews, where there are 70 ratingshaving 3 stars and 35 reviews authored on the U.S. site, 10 ratingshaving 4 stars and 10 reviews authored on the UK site, and 20 ratingshaving 3.5 stars and 15 reviews authored on the Canadian site, then theGerman site will show an approximately 3.5 star rating based on 80ratings (70 ratings from the U.S. site and 10 ratings from the UK site)and 45 reviews (35 reviews from the U.S. site and 10 reviews from the UKsite).

In some example embodiments, a user can select a selectable “Write aReview” option (e.g., a selectable graphical user interface element) forthe item listing in order to write and submit a product review for aproduct of an item listing.

In some example embodiments, when a user selects a “Write a Review”option in association with an item listing (e.g., from a view item pagefor the item listing), then, if the ratings configuration includes thesite that the item listing product ID is associated with, then theaspects associated with the product ID and the site it is associatedwith will be shown in the original site's locale. This review will berecorded as written on the site on which the user wrote the review, butthe other aspects will be from the product ID site. For example, for aGerman site having a reviews configuration that includes product reviewsfrom Germany and the U.S., for a U.S. item listing (adopted to a U.S.product ID), the German site will show the U.S. aspects. The reviewwritten on the German site will be in German, but the other aspects(e.g., description, price, etc.) will be from the U.S. site. Theseoriginal aspects will be shown to the user when the user edits thereview irrespective of the site the user is on.

In some example embodiments, when a user selects a “Write a Review”option in association with an item listing (e.g., from a view item pagefor the item listing), then, if the reviews configuration for the siteon which the “Write a Review” option is being selected does not includethe site that the corresponding item listing is being adopted to, thenno aspects will be shown in the “Write a Review” page, and, therefore,no aspects will be recorded against the product review. For example, fora German site having a reviews configuration only specifying the Germansite, for a U.S. item listing (adopted to a U.S. product ID) shown onthe German site, the German site will not show the U.S. aspects. Whenthe user edits this review in the future, irrespective of the site theuser is on, The German site will not show the aspects.

In some example embodiments, the data adoption system 150 ensures that auser is restricted to writing only one review per product ID,irrespective of the site the user is on. For example, if a user hasalready submitted a product review for a product ID on a site, when theuser clicks on “Write a Review” option on another site, if a reviewalready exists for that product ID, then the user will be presented withan “Edit a Review” option or screen with an informational message and beprompted to edit previous product reviews of the user that the usersubmitted from any related sites. In some example embodiments, when auser writes a review for a product for the first time, the data adoptionsystem 150 records the site ID as having been “Reviewed On.” This valueremains constant regardless of how many times the user has edited thereview on multiple other sites.

In some example embodiments, the data adoption system 150 enables a site(e.g., a site administrator) to decide if it wants to continue defaultbehavior or show all reviews that a user has written across thedifferent sites on the site that the user is on. If a user tries to edita review (e.g., from the user's “Profile” page or from a “See AllReviews”), the user will not be required to be redirected to theoriginal site. Instead, an informational message is displayed on the“Edit a Review” screen informing the user that the user is editing areview originally written on another site. A user's profile page, beingcontrolled by a reviews configuration default setting, can show reviewsonly on the site that the user is on, or else read the configurationwhich will typically be all sites where reviews are enabled.

FIG. 7 is a block diagram illustrating components of the data adoptionsystem 150, in accordance with some example embodiments. The dataadoption system 150 is configured to perform the operations andimplement the features disclosed herein. In some example embodiments,the data adoption system 150 comprises any combination of one or more ofa configuration module 710, a detection module 720, an associationmodule 730, a presentation module 740, an input module 750, and one ormore databases 760. The configuration module 710, the detection module720, the association module 730, the presentation module 740, the inputmodule 750, and the database(s) 760 are communicatively coupled to eachother. In some example embodiments, the configuration module 710, thedetection module 720, the association module 730, the presentationmodule 740, the input module 750, and the database(s) 760 reside on asingle machine having a memory and at least one processor. In someexample embodiments, one or more of the configuration module 710, thedetection module 720, the association module 730, the presentationmodule 740, the input module 750, and the database(s) 760 reside ondifferent machines. Database(s) 760, or a portion thereof, can beincorporated into database(s) 126 of FIG. 1.

In some example embodiments, the configuration module 710 is configuredto configure a local site to adopt data from one or more peer sites. Forexample, the configuration module 710 may configure a Canadian site(e.g., site B 512 in FIG. 5) to adopt, inherit, or replicate data (e.g.,product reviews) from one or more other corresponding sites (e.g., U.S.site A 510, UK site C 514, and German site D 516 in FIG. 5). In someexample embodiments, the configuration module 710 enables a user, suchas a site administrator, to input or modify a configuration file, whichcan be used by the configuration module 710 to implement the specifiedconfiguration.

In some example embodiments, the detection module 720 is configured todetect an update of data on the peer site(s) specified in the dataadoption configuration. Such an update of data may include, but is notlimited to, a submission of a new product review and a modification of apreviously-submitted product review. However, other types of data arealso within the scope of the present disclosure.

In some example embodiments, the association module 730 is configured toupdate the local site to adopt the updated data from the peer site(s)based on the data adoption configuration. For example, the associationmodule 730 can store a product review, submitted on the U.S. site for aproduct ID, in association with the same product ID for the Canadiansite, such that the Canadian site will present the product review to auser of the Canadian site when the user, via the Canadian site, requestsa display of product reviews for that product ID.

In some example embodiments, the presentation module 740 is configuredto cause product reviews, as well as other data, to be displayed to on acomputing device of a user. The presentation module 740 can aggregateall of the corresponding product reviews for a specific product ID fromthe peer site(s) specified in the data adoption configuration, andpresent the aggregation of product reviews on the computing device. Thepresentation module 740 can also aggregate all of the product reviewsauthored by a single user on all of the peer sites specified in the dataadoption configuration, and present the aggregation of all of the user'sproduct reviews on the computing device.

In some example embodiments, the input module 750 is configured toenable a user to create or edit a product review, such as by providing auser interface configured to receive user input, such as text entered bythe user and selections of graphical UI elements (e.g., a selectablenumber of stars for a star-based ratings system).

In some example embodiments, the database(s) 760 store the data adoptionconfigurations and the product reviews.

FIGS. 8A-8B illustrate a change in data on a local site based on datafrom a peer site, in accordance with some example embodiments. FIG. 8Ashows a table 810 of product reviews (Review A, Review B, and Review C)for a single product (product A) of an item listing of the local site(Site A), with the single product having an associated product ID. Insome example embodiments, the product reviews are stored in the table810 on the local site in association with the product, such as inassociation with the corresponding product ID. FIG. 8A also shows atable 820 of product reviews (Review X and Review Y) for the same singleproduct (product A) of an item listing of the peer site (Site B). Insome example embodiments, the product reviews are stored in the table820 on the peer site in association with the product ID.

FIG. 8B shows the adoption, by site A, of the product reviews from siteB based on a configuration of Site A to adopt the product reviews ofSite B. In FIG. 8B, the table 810′ of Site A has been updated to storethe product reviews from Site B (Review X and Review Y) in associationwith product A, such that a request on Site A to display the productreviews for product A will include the product reviews from Site B inaddition to the product reviews from Site A. FIG. 8B also shows Site Bnot adopting the product reviews of Site A, based on a configuration ofSite B that does not include the adoption of product reviews of Site A,such that a request on Site B to display the product reviews for productA will not include the product reviews from Site A.

FIG. 9 illustrates a table 900 of product reviews by a single useraggregated from different sites, in accordance with some exampleembodiments. For example, the table 900 stores all of the productreviews that a single user authored or submitted on all of the peersites that are included within a site's data adoption configuration. Forexample, if the user is viewing his or her profile on Site A, which hasa data adoption configuration to adopt product reviews from Site B andSite C, then, in response to the user's request from the profile page,or from another page, on Site A to view all of the product reviews(e.g., Review A from Site B, Review B from Site C, Review C from Site A,Review D from Site B, Review E from Site B, . . . ) that the single userhas authored or submitted, irrespective of the product, all of thoseproduct reviews can be provided to the user on Site A. the table 900 maybe stored on database(s) 760.

FIG. 10 illustrates a UI 1000 displaying a single user's product reviews605 aggregated from different sites, in accordance with some exampleembodiments. Each product review 605 may comprise one or more aspects ofthe review, including, but not limited to, an identification 1005 of thecorresponding product, a rating 610 (e.g., a star-based rating), atext-based review headline 612, and a text-based review 614. Eachproduct review 605 may also comprise the date on which the review wasauthored or submitted to the corresponding site. Each product review 605may also comprise an indication 618 of the site on which the productreview 605 was originally authored or submitted. As seen in FIG. 10, asingle user's product reviews aggregated from different sites(www.ebay.com, www.ebay.de, www.ebay.co.uk) are displayed within the UI1000.

In some example embodiments, the input module 750 is configured toreceiving a request from a user to submit a new review of a product on alocal site, and to determine that the user has previously submitted areview of the product on a different peer site. The input module 750then, based on the determination that the user has previously submittedthe review of the product on another site, prevents the user fromsubmitting the new review of the product on the local site. For example,the input module 750 may redirect the user to a page informing the userthat he or she has already submitted a review for the product. In someexample embodiments, the input module 750 is configured to display, onthe local site, a prompting for the user to edit the previouslysubmitted review, based on the determination that the user haspreviously submitted the review of the product on another site.

FIG. 11 illustrates a UI 1100 displaying a mobile page configured toenable a user to edit a product review, in accordance with some exampleembodiments. In FIG. 11, UI 1100 is configured to enable the user toedit a product review that the user originally authored or submitted ona different site than the site on which the user is editing the productreview. In some example embodiments, this mobile page is presented tothe user based on the determination that the user has previouslysubmitted a review of a product on another site. In FIG. 11, anotification 110 is displayed informing the user that he or she isediting a review that he or she originally submitted on another site.The mobile page may display identifying information about the product,such as an image 1120 and a title 1130. The mobile page may also displayan indication 1140 of the user's previously submitted review 1140. Insome example embodiments, the indication is configured to enable theuser to modify or edit the previously submitted review in response toits selection. For example, the indication 1140 may comprise aselectable link configured to present the user with one or more inputmechanisms for modifying or editing the review.

FIG. 12 illustrates a UI 1200 displaying a non-mobile page configured toenable a user to edit a product review, in accordance with some exampleembodiments. In FIG. 12, UI 1200 is configured to enable the user toedit a product review that the user originally authored or submitted ona different site than the site on which the user is editing the productreview. In some example embodiments, this mobile page is presented tothe user based on the determination that the user has previouslysubmitted a review of a product on another site. In FIG. 12, anotification 110 is displayed informing the user that he or she isediting a review that he or she originally submitted on another site.The mobile page may display identifying information about the product,such as an image 1120 and a title 1130. The mobile page may also displayone or more indications of the user's previously submitted review. Suchindications may include, but are not limited to, indication 1140corresponding to a text-based review and indication 1250 correspondingto a rating-based review. In some example embodiments, the indicationsare configured to enable the user to modify or edit the previouslysubmitted review in response to its selection. For example, theindications may comprise a selectable link configured to present theuser with one or more input mechanisms for modifying or editing thereview.

FIG. 13 is a flowchart illustrating a method 1300 of managing data forpeer sites, in accordance with some example embodiments. The operationsof method 1300 can be performed by a system or modules of a system. Theoperations of method 1300 can be performed by processing logic that cancomprise hardware (e.g., circuitry, dedicated logic, programmable logic,microcode, etc.), software (e.g., instructions run on a processingdevice), or a combination thereof. In one example embodiment, the method1300 is performed by data adoption system 150 of FIGS. 1 and 7, or anycombination of one or more of its components or modules, as describedabove.

At operation 1310, the data adoption system 150 configures a local site(e.g., a networked site) to adopt data from one or more peer sites(e.g., one or more other networked sites). In some example embodiments,the local site and each one of the one or more peer sites have differenttop-level domains from one another. In some example embodiments, thetop-level domains of each one of the one or more peer sites correspondsto a different country than the top-level domain of the local site. Insome example embodiments, the data adoption system 150 configures thelocal site to adopt data of a first type from the peer site(s), andconfigures the local site not to adopt data of a second type from thepeer site(s), with the second type being different from the first type.In some example embodiments, the first type of data is a first type ofproduct review (e.g., a text-based review) and the second type of datais a second type of product review (e.g., a graphic ratings-basedreview).

At operation 1320, the data adoption system 150 detects new data on oneor more peer sites, with the new data being associated with a data itemon the peer site(s). In some example embodiments, the new data comprisesa review of a product and the data item comprises a productidentification. For example, the data adoption system 150 may detect thecreation of a new product review or the modification of analready-existing product review on the peer site(s), with the productreview having a corresponding product identification.

At operation 1330, the data adoption system 150 determines that a recordof the data item is being stored on the local site. At operation 1340,the data adoption system 150 stores the new data from the peer site(s)on the local site in association with the data item based on thedetecting of the new data on the peer site(s) and the determination thata record of the data item is being stored on the local site. In someexample embodiments, operation 1340 comprises updating the local site toadopt updated data from the peer site(s) based on the data adoptionconfiguration.

At operation 1350, the data adoption system 150 receives, from acomputing device of a user accessing the local site, a request to viewinformation about the data item, such as a request to view informationabout a particular product. At operation 1360, the data adoption system150 retrieves the new data stored on the local site in association withthe data item.

At operation 1360, the data adoption system 150 displays the retrievednew data on the local site to the user on the computing device. In someexample embodiments, the data adoption system 150 determines a type ofpage on which the retrieved new data is displayed on the peer site(s),and displays the retrieved new data on the same type of page on thelocal site. In some example embodiments, the data adoption system 150determines a position in which to display the retrieved new data on thelocal site, with the position being based at least in part on the newdata having originated from the peer site(s), and displays the retrievednew data in the determined position on the local site. For example, thedata adoption system 150 may give priority in display position to data(e.g., a review of a product) originating from the local site over dataoriginating from the peer site(s), such as by displaying the dataoriginating from the local site in a position higher in a list of data(e.g. a list of product reviews) than data originating from the peersite(s).

It is contemplated that the operations of method 1300 can incorporateany of the other features disclosed herein.

FIG. 14 is a flowchart illustrating a method 1400 of using adopted data,in accordance with some example embodiments. The operations of method1400 can be performed by a system or modules of a system. The operationsof method 1400 can be performed by processing logic that can comprisehardware (e.g., circuitry, dedicated logic, programmable logic,microcode, etc.), software (e.g., instructions run on a processingdevice), or a combination thereof. In one example embodiment, the method1400 is performed by data adoption system 150 of FIGS. 1 and 6, or anycombination of one or more of its components or modules, as describedabove.

At operation 1410, the data adoption system 150 receives, from a user ona computing device accessing the local site, a request to submit a newreview of a product. At operation 1420, the data adoption system 150determines that the user has previously submitted a review of theproduct on one or more peer sites. At operation 1430, the data adoptionsystem, based on the determination that the user has previouslysubmitted the review of the product on the peer site(s), prevents theuser from submitting the new review of the product on the local site. Atoperation 1440, the data adoption system 150 displays a prompting on thelocal site for the user to edit the previously submitted review based onthe determination that the user has previously submitted the review ofthe product on the peer site(s).

It is contemplated that the operations of method 1400 can incorporateany of the other features disclosed herein. For example, any combinationof one or more of operations 1410, 1420, 1430, and 1440 in FIG. 14 maybe performed before, during, or after the performance of any one ofoperations 1310, 1320, 1330, 1340, 1350, 1360, and 1370 in FIG. 13.

It is contemplated that any features of any embodiments disclosed hereincan be combined with any other features of any other embodimentsdisclosed herein. Accordingly, these any such hybrid embodiments arewithin the scope of the present disclosure.

By preventing a user from submitting multiple reviews for the sameproduct, the data adoption system 150 can significantly reduce theconsumption of electronic resources of a networked site. For example,such prevention techniques help avoid storing redundant information,thereby reducing the amount of storage space that is consumed. Othertechnical benefits may also result from the features of the presentdisclosure.

FIG. 15 is a block diagram illustrating a mobile device 1500, inaccordance with some example embodiments. The mobile device 1500 caninclude a processor 1502. The processor 1502 can be any of a variety ofdifferent types of commercially available processors suitable for mobiledevices 1500 (for example, an XScale architecture microprocessor, aMicroprocessor without Interlocked Pipeline Stages (MIPS) architectureprocessor, or another type of processor). A memory 1504, such as arandom access memory (RAM), a Flash memory, or other type of memory, istypically accessible to the processor 1502. The memory 1504 can beadapted to store an operating system (OS) 1506, as well as applicationprograms 1508, such as a mobile location enabled application that canprovide LBSs to a user. The processor 1502 can be coupled, eitherdirectly or via appropriate intermediary hardware, to a display 1510 andto one or more input/output (I/O) devices 1512, such as a keypad, atouch panel sensor, a microphone, and the like. Similarly, in someexample embodiments, the processor 1502 can be coupled to a transceiver1514 that interfaces with an antenna 1516. The transceiver 1514 can beconfigured to both transmit and receive cellular network signals,wireless data signals, or other types of signals via the antenna 1516,depending on the nature of the mobile device 1500. Further, in someconfigurations, a GPS receiver 1518 can also make use of the antenna1516 to receive GPS signals.

Certain embodiments are described herein as including logic or a numberof components, modules, or mechanisms. Modules may constitute eithersoftware modules (e.g., code embodied on a machine-readable medium) orhardware modules. A “hardware module” is a tangible unit capable ofperforming certain operations and may be configured or arranged in acertain physical manner. In various example embodiments, one or morecomputer systems (e.g., a standalone computer system, a client computersystem, or a server computer system) or one or more hardware modules ofa computer system (e.g., a processor or a group of processors) may beconfigured by software (e.g., an application or application portion) asa hardware module that operates to perform certain operations asdescribed herein.

In some embodiments, a hardware module may be implemented mechanically,electronically, or any suitable combination thereof. For example, ahardware module may include dedicated circuitry or logic that ispermanently configured to perform certain operations. For example, ahardware module may be a special-purpose processor, such as aField-Programmable Gate Array (FPGA) or an Application SpecificIntegrated Circuit (ASIC). A hardware module may also includeprogrammable logic or circuitry that is temporarily configured bysoftware to perform certain operations. For example, a hardware modulemay include software executed by a general-purpose processor or otherprogrammable processor. Once configured by such software, hardwaremodules become specific machines (or specific components of a machine)uniquely tailored to perform the configured functions and are no longergeneral-purpose processors. It will be appreciated that the decision toimplement a hardware module mechanically, in dedicated and permanentlyconfigured circuitry, or in temporarily configured circuitry (e.g.,configured by software) may be driven by cost and time considerations.

Accordingly, the phrase “hardware module” should be understood toencompass a tangible entity, be that an entity that is physicallyconstructed, permanently configured (e.g., hardwired), or temporarilyconfigured (e.g., programmed) to operate in a certain manner or toperform certain operations described herein. As used herein,“hardware-implemented module” refers to a hardware module. Consideringembodiments in which hardware modules are temporarily configured (e.g.,programmed), each of the hardware modules need not be configured orinstantiated at any one instance in time. For example, where a hardwaremodule comprises a general-purpose processor configured by software tobecome a special-purpose processor, the general-purpose processor may beconfigured as respectively different special-purpose processors (e.g.,comprising different hardware modules) at different times. Softwareaccordingly configures a particular processor or processors, forexample, to constitute a particular hardware module at one instance oftime and to constitute a different hardware module at a differentinstance of time.

Hardware modules can provide information to, and receive informationfrom, other hardware modules. Accordingly, the described hardwaremodules may be regarded as being communicatively coupled. Where multiplehardware modules exist contemporaneously, communications may be achievedthrough signal transmission (e.g., over appropriate circuits and buses)between or among two or more of the hardware modules. In embodiments inwhich multiple hardware modules are configured or instantiated atdifferent times, communications between such hardware modules may beachieved, for example, through the storage and retrieval of informationin memory structures to which the multiple hardware modules have access.For example, one hardware module may perform an operation and store theoutput of that operation in a memory device to which it iscommunicatively coupled. A further hardware module may then, at a latertime, access the memory device to retrieve and process the storedoutput. Hardware modules may also initiate communications with input oroutput devices, and can operate on a resource (e.g., a collection ofinformation).

The various operations of example methods described herein may beperformed, at least partially, by one or more processors that aretemporarily configured (e.g., by software) or permanently configured toperform the relevant operations. Whether temporarily or permanentlyconfigured, such processors may constitute processor-implemented modulesthat operate to perform one or more operations or functions describedherein. As used herein, “processor-implemented module” refers to ahardware module implemented using one or more processors.

Similarly, the methods described herein may be at least partiallyprocessor-implemented, with a particular processor or processors beingan example of hardware. For example, at least some of the operations ofa method may be performed by one or more processors orprocessor-implemented modules. Moreover, the one or more processors mayalso operate to support performance of the relevant operations in a“cloud computing” environment or as a “software as a service” (SaaS).For example, at least some of the operations may be performed by a groupof computers (as examples of machines including processors), with theseoperations being accessible via a network (e.g., the Internet) and viaone or more appropriate interfaces (e.g., an Application ProgramInterface (API)).

The performance of certain of the operations may be distributed amongthe processors, not only residing within a single machine, but deployedacross a number of machines. In some example embodiments, the processorsor processor-implemented modules may be located in a single geographiclocation (e.g., within a home environment, an office environment, or aserver farm). In other example embodiments, the processors orprocessor-implemented modules may be distributed across a number ofgeographic locations.

The modules, methods, applications and so forth described in conjunctionwith FIGS. 1-14 are implemented in some embodiments in the context of amachine and an associated software architecture. The sections belowdescribe representative software architecture(s) and machine (e.g.,hardware) architecture that are suitable for use with the disclosedembodiments.

Software architectures are used in conjunction with hardwarearchitectures to create devices and machines tailored to particularpurposes. For example, a particular hardware architecture coupled with aparticular software architecture will create a mobile device, such as amobile phone, tablet device, or so forth. A slightly different hardwareand software architecture may yield a smart device for use in the“internet of things.” While yet another combination produces a servercomputer for use within a cloud computing architecture. Not allcombinations of such software and hardware architectures are presentedhere as those of skill in the art can readily understand how toimplement the features of the present disclosure in different contextsfrom the disclosure contained herein.

FIG. 16 is a block diagram 1600 illustrating a representative softwarearchitecture 1602, which may be used in conjunction with varioushardware architectures herein described. FIG. 16 is merely anon-limiting example of a software architecture 1602 and it will beappreciated that many other architectures may be implemented tofacilitate the functionality described herein. The software architecture1602 may be executing on hardware such as a machine 1700 of FIG. 17 thatincludes, among other things, processors 1610, memory/storage 1630, andI/O components 1650. A representative hardware layer 1604 is illustratedin FIG. 16 and can represent, for example, the machine 1700 of FIG. 17.The representative hardware layer 1604 comprises one or more processingunits 1606 having associated executable instructions 1608. Theexecutable instructions 1608 represent the executable instructions ofthe software architecture 1602, including implementation of the methods,modules, and so forth of FIGS. 4-13. The hardware layer 1604 alsoincludes memory and/or storage modules 1610, which also have theexecutable instructions 1608. The hardware layer 1604 may also compriseother hardware 1612, which represents any other hardware of the hardwarelayer 1604, such as the other hardware illustrated as part of themachine 1600.

In the example architecture of FIG. 16, the software architecture 1602may be conceptualized as a stack of layers where each layer providesparticular functionality. For example, the software architecture 1602may include layers such as an operating system 1614, libraries 1616,frameworks/middleware 1618, applications 1620, and a presentation layer1644. Operationally, the applications 1620 and/or other componentswithin the layers may invoke application programming interface (API)calls 1624 through the software stack and receive a response, returnedvalues, and so forth, illustrated as messages 1626, in response to theAPI calls 1624. The layers illustrated are representative in nature andnot all software architectures have all layers. For example, some mobileor special purpose operating systems may not provide aframeworks/middleware 1618, while others may provide such a layer. Othersoftware architectures may include additional or different layers.

The operating system 1614 may manage hardware resources and providecommon services. The operating system 1614 may include, for example, akernel 1628, services 1630, and drivers 1632. The kernel 1628 may act asan abstraction layer between the hardware and the other software layers.For example, the kernel 1628 may be responsible for memory management,processor management (e.g., scheduling), component management,networking, security settings, and so on. The services 1630 may provideother common services for the other software layers. The drivers 1632may be responsible for controlling or interfacing with the underlyinghardware. For instance, the drivers 1632 may include display drivers,camera drivers, Bluetooth® drivers, flash memory drivers, serialcommunication drivers (e.g., Universal Serial Bus (USB) drivers), Wi-Fi®drivers, audio drivers, power management drivers, and so forth dependingon the hardware configuration.

The libraries 1616 may provide a common infrastructure that may beutilized by the applications 1620 or other components or layers. Thelibraries 1616 typically provide functionality that allows othersoftware modules to perform tasks in an easier fashion than to interfacedirectly with the underlying operating system 1614 functionality (e.g.,kernel 1628, services 1630, and/or drivers 1632). The libraries 1616 mayinclude system libraries 1634 (e.g., C standard library) that mayprovide functions such as memory allocation functions, stringmanipulation functions, mathematic functions, and the like. In addition,the libraries 1616 may include API libraries 1636 such as medialibraries (e.g., libraries to support presentation and manipulation ofvarious media formats such as MPEG4, H.264, MP3, AAC, AMR, JPG, PNG),graphics libraries (e.g., an OpenGL framework that may be used to render2D and 3D graphic content on a display), database libraries (e.g.,SQLite that may provide various relational database functions), weblibraries (e.g., WebKit that may provide web browsing functionality),and the like. The libraries 1616 may also include a wide variety ofother libraries 1638 to provide many other APIs to the applications 1620and other software components/modules.

The frameworks/middleware 1618 may provide a higher-level commoninfrastructure that may be utilized by the applications 1620 or othersoftware components/modules. For example, the frameworks/middleware 1618may provide various graphic user interface (GUI) functions, high-levelresource management, high-level location services, and so forth. Theframeworks/middleware 1618 may provide a broad spectrum of other APIsthat may be utilized by the applications 1620 or other softwarecomponents/modules, some of which may be specific to a particularoperating system or platform.

The applications 1620 include built-in applications 1640 or third partyapplications 1642. Examples of representative built-in applications 1640may include, but are not limited to, a contacts application, a browserapplication, a book reader application, a location application, a mediaapplication, a messaging application, or a game application. The thirdparty applications 1642 may include any of the built in applications1640 as well as a broad assortment of other applications. In a specificexample, the third party application 1642 (e.g., an applicationdeveloped using the Android™ or iOS™ software development kit (SDK) byan entity other than the vendor of the particular platform) may bemobile software running on a mobile operating system such as iOS™,Android™, Windows® Phone, or other mobile operating systems. In thisexample, the third party application 1642 may invoke the API calls 1624provided by the mobile operating system such as the operating system1614 to facilitate functionality described herein.

The applications 1620 may utilize built-in operating system functions(e.g., kernel 1628, services 1630, and/or drivers 1632), libraries(e.g., system libraries 1634, API libraries 1636, and other libraries1638), and frameworks/middleware 1618 to create user interfaces tointeract with users of the system. Alternatively, or additionally, insome systems, interactions with a user may occur through a presentationlayer, such as the presentation layer 1644. In these systems, theapplication/module “logic” can be separated from the aspects of theapplication/module that interact with a user.

Some software architectures utilize virtual machines. In the example ofFIG. 16, this is illustrated by a virtual machine 1648. A virtualmachine creates a software environment where applications/modules canexecute as if they were executing on a hardware machine (e.g., themachine of FIG. 17). A virtual machine is hosted by a host operatingsystem (e.g., operating system 1614) and typically, although not always,has a virtual machine monitor 1646, which manages the operation of thevirtual machine 1648 as well as the interface with the host operatingsystem (e.g., operating system 1614). A software architecture executeswithin the virtual machine 1648 such as an operating system 1650,libraries 1652, frameworks 1654, applications 1656, or presentationlayer 1658. These layers of software architecture executing within thevirtual machine 1648 can be the same as corresponding layers previouslydescribed or may be different.

FIG. 17 is a block diagram illustrating components of a machine 1700,according to some example embodiments, able to read instructions from amachine-readable medium (e.g., a machine-readable storage medium) andperform any one or more of the methodologies discussed herein.Specifically, FIG. 17 shows a diagrammatic representation of the machine1700 in the example form of a computer system, within which instructions1716 (e.g., software, a program, an application, an applet, an app, orother executable code) for causing the machine 1700 to perform any oneor more of the methodologies discussed herein may be executed. Forexample the instructions may cause the machine to execute the flowdiagram of FIG. 13. Additionally, or alternatively, the instructions mayimplement any combination of one or more of the modules of FIG. 6, andso forth. The instructions transform the general, non-programmed machineinto a particular machine programmed to carry out the described andillustrated functions in the manner described. In alternativeembodiments, the machine 1700 operates as a standalone device or may becoupled (e.g., networked) to other machines. In a networked deployment,the machine 1700 may operate in the capacity of a server machine or aclient machine in a server-client network environment, or as a peermachine in a peer-to-peer (or distributed) network environment. Themachine 1700 may comprise, but not be limited to, a server computer, aclient computer, a personal computer (PC), a tablet computer, a laptopcomputer, a netbook, a set-top box (STB), a personal digital assistant(PDA), an entertainment media system, a cellular telephone, a smartphone, a mobile device, a wearable device (e.g., a smart watch), a smarthome device (e.g., a smart appliance), other smart devices, a webappliance, a network router, a network switch, a network bridge, or anymachine capable of executing the instructions 1716, sequentially orotherwise, that specify actions to be taken by machine 1700. Further,while only a single machine 1700 is illustrated, the term “machine”shall also be taken to include a collection of machines 1700 thatindividually or jointly execute the instructions 1716 to perform any oneor more of the methodologies discussed herein.

The machine 1700 may include processors 1710, memory 1730, and I/Ocomponents 1750, which may be configured to communicate with each othersuch as via a bus 1702. In an example embodiment, the processors 1710(e.g., a Central Processing Unit (CPU), a Reduced Instruction SetComputing (RISC) processor, a Complex Instruction Set Computing (CISC)processor, a Graphics Processing Unit (GPU), a Digital Signal Processor(DSP), an Application Specific Integrated Circuit (ASIC), aRadio-Frequency Integrated Circuit (RFIC), another processor, or anysuitable combination thereof) may include, for example, processor 1712and processor 1714 that may execute instructions 1716. The term“processor” is intended to include multi-core processor that maycomprise two or more independent processors (sometimes referred to as“cores”) that may execute instructions contemporaneously. Although FIG.17 shows multiple processors, the machine 1700 may include a singleprocessor with a single core, a single processor with multiple cores(e.g., a multi-core process), multiple processors with a single core,multiple processors with multiples cores, or any combination thereof.

The memory/storage 1730 may include a memory 1732, such as a mainmemory, or other memory storage, and a storage unit 1736, bothaccessible to the processors 1710 such as via the bus 1702. The storageunit 1736 and memory 1732 store the instructions 1716 embodying any oneor more of the methodologies or functions described herein. Theinstructions 1716 may also reside, completely or partially, within thememory 1732, within the storage unit 1736, within at least one of theprocessors 1710 (e.g., within the processor's cache memory), or anysuitable combination thereof, during execution thereof by the machine1700. Accordingly, the memory 1732, the storage unit 1736, and thememory of processors 1710 are examples of machine-readable media.

As used herein, “machine-readable medium” means a device able to storeinstructions and data temporarily or permanently and may include, but isnot be limited to, random-access memory (RAM), read-only memory (ROM),buffer memory, flash memory, optical media, magnetic media, cachememory, other types of storage (e.g., Erasable Programmable Read-OnlyMemory (EEPROM)) and/or any suitable combination thereof. The term“machine-readable medium” should be taken to include a single medium ormultiple media (e.g., a centralized or distributed database, orassociated caches and servers) able to store instructions 1716. The term“machine-readable medium” shall also be taken to include any medium, orcombination of multiple media, that is capable of storing instructions(e.g., instructions 1716) for execution by a machine (e.g., machine1700), such that the instructions, when executed by one or moreprocessors of the machine 1700 (e.g., processors 1710), cause themachine 1700 to perform any one or more of the methodologies describedherein. Accordingly, a “machine-readable medium” refers to a singlestorage apparatus or device, as well as “cloud-based” storage systems orstorage networks that include multiple storage apparatus or devices. Theterm “machine-readable medium” excludes signals per se.

The I/O components 1750 may include a wide variety of components toreceive input, provide output, produce output, transmit information,exchange information, capture measurements, and so on. The specific I/Ocomponents 1750 that are included in a particular machine will depend onthe type of machine. For example, portable machines such as mobilephones will likely include a touch input device or other such inputmechanisms, while a headless server machine will likely not include sucha touch input device. It will be appreciated that the I/O components1750 may include many other components that are not shown in FIG. 17.The I/O components 1750 are grouped according to functionality merelyfor simplifying the following discussion and the grouping is in no waylimiting. In various example embodiments, the I/O components 1750 mayinclude output components 1752 and input components 1754. The outputcomponents 1752 may include visual components (e.g., a display such as aplasma display panel (PDP), a light emitting diode (LED) display, aliquid crystal display (LCD), a projector, or a cathode ray tube (CRT)),acoustic components (e.g., speakers), haptic components (e.g., avibratory motor, resistance mechanisms), other signal generators, and soforth. The input components 1754 may include alphanumeric inputcomponents (e.g., a keyboard, a touch screen configured to receivealphanumeric input, a photo-optical keyboard, or other alphanumericinput components), point based input components (e.g., a mouse, atouchpad, a trackball, a joystick, a motion sensor, or other pointinginstrument), tactile input components (e.g., a physical button, a touchscreen that provides location and/or force of touches or touch gestures,or other tactile input components), audio input components (e.g., amicrophone), and the like.

In further example embodiments, the I/O components 1750 may includebiometric components 1756, motion components 1758, environmentalcomponents 1760, or position components 1762 among a wide array of othercomponents. For example, the biometric components 1756 may includecomponents to detect expressions (e.g., hand expressions, facialexpressions, vocal expressions, body gestures, or eye tracking), measurebiosignals (e.g., blood pressure, heart rate, body temperature,perspiration, or brain waves), identify a person (e.g., voiceidentification, retinal identification, facial identification,fingerprint identification, or electroencephalogram basedidentification), and the like. The motion components 1758 may includeacceleration sensor components (e.g., accelerometer), gravitation sensorcomponents, rotation sensor components (e.g., gyroscope), and so forth.The environmental components 1760 may include, for example, illuminationsensor components (e.g., photometer), temperature sensor components(e.g., one or more thermometer that detect ambient temperature),humidity sensor components, pressure sensor components (e.g.,barometer), acoustic sensor components (e.g., one or more microphonesthat detect background noise), proximity sensor components (e.g.,infrared sensors that detect nearby objects), gas sensors (e.g., gasdetection sensors to detection concentrations of hazardous gases forsafety or to measure pollutants in the atmosphere), or other componentsthat may provide indications, measurements, or signals corresponding toa surrounding physical environment. The position components 1762 mayinclude location sensor components (e.g., a Global Position System (GPS)receiver component), altitude sensor components (e.g., altimeters orbarometers that detect air pressure from which altitude may be derived),orientation sensor components (e.g., magnetometers), and the like.

Communication may be implemented using a wide variety of technologies.The I/O components 1750 may include communication components 1764operable to couple the machine 1700 to a network 1780 or devices 1770via coupling 1782 and coupling 1772 respectively. For example, thecommunication components 1764 may include a network interface componentor other suitable device to interface with the network 1780. In furtherexamples, communication components 1764 may include wired communicationcomponents, wireless communication components, cellular communicationcomponents, Near Field Communication (NFC) components. Bluetooth®components (e.g., Bluetooth® Low Energy), Wi-Fi® components, and othercommunication components to provide communication via other modalities.The devices 1770 may be another machine or any of a wide variety ofperipheral devices (e.g., a peripheral device coupled via a UniversalSerial Bus (USB)).

Moreover, the communication components 1764 may detect identifiers orinclude components operable to detect identifiers. For example, thecommunication components 1764 may include Radio Frequency Identification(RFID) tag reader components, NFC smart tag detection components,optical reader components (e.g., an optical sensor to detectone-dimensional bar codes such as Universal Product Code (UPC) bar code,multi-dimensional bar codes such as Quick Response (QR) code, Azteccode, Data Matrix, Dataglyph, MaxiCode, PDF417, Ultra Code, UCC RSS-2Dbar code, and other optical codes), or acoustic detection components(e.g., microphones to identify tagged audio signals). In addition, avariety of information may be derived via the communication components1764, such as, location via Internet Protocol (IP) geo-location,location via Wi-Fi® signal triangulation, location via detecting a NFCbeacon signal that may indicate a particular location, and so forth.

In various example embodiments, one or more portions of the network 1780may be an ad hoc network, an intranet, an extranet, a virtual privatenetwork (VPN), a local area network (LAN), a wireless LAN (WLAN), a widearea network (WAN), a wireless WAN (WWAN), a metropolitan area network(MAN), the Internet, a portion of the Internet, a portion of the PublicSwitched Telephone Network (PSTN), a plain old telephone service (POTS)network, a cellular telephone network, a wireless network, a Wi-Fi®network, another type of network, or a combination of two or more suchnetworks. For example, the network 1780 or a portion of the network 1780may include a wireless or cellular network and the coupling 1782 may bea Code Division Multiple Access (CDMA) connection, a Global System forMobile communications (GSM) connection, or other type of cellular orwireless coupling. In this example, the coupling 1782 may implement anyof a variety of types of data transfer technology, such as SingleCarrier Radio Transmission Technology (1×RTT), Evolution-Data Optimized(EVDO) technology, General Packet Radio Service (GPRS) technology,Enhanced Data rates for GSM Evolution (EDGE) technology, thirdGeneration Partnership Project (3GPP) including 3G, fourth generationwireless (4G) networks, Universal Mobile Telecommunications System(UMTS), High Speed Packet Access (HSPA), Worldwide Interoperability forMicrowave Access (WiMAX), Long Term Evolution (LTE) standard, othersdefined by various standard setting organizations, other long rangeprotocols, or other data transfer technology.

The instructions 1716 may be transmitted or received over the network1780 using a transmission medium via a network interface device (e.g., anetwork interface component included in the communication components1764) and utilizing any one of a number of well-known transfer protocols(e.g., hypertext transfer protocol (HTTP)). Similarly, the instructions1716 may be transmitted or received using a transmission medium via thecoupling 1772 (e.g., a peer-to-peer coupling) to devices 1770. The term“transmission medium” shall be taken to include any intangible mediumthat is capable of storing, encoding, or carrying instructions 1716 forexecution by the machine 1700, and includes digital or analogcommunications signals or other intangible medium to facilitatecommunication of such software.

Throughout this specification, plural instances may implementcomponents, operations, or structures described as a single instance.Although individual operations of one or more methods are illustratedand described as separate operations, one or more of the individualoperations may be performed concurrently, and nothing requires that theoperations be performed in the order illustrated. Structures andfunctionality presented as separate components in example configurationsmay be implemented as a combined structure or component. Similarly,structures and functionality presented as a single component may beimplemented as separate components. These and other variations,modifications, additions, and improvements fall within the scope of thesubject matter herein.

Although an overview of the inventive subject matter has been describedwith reference to specific example embodiments, various modificationsand changes may be made to these embodiments without departing from thebroader scope of embodiments of the present disclosure. Such embodimentsof the inventive subject matter may be referred to herein, individuallyor collectively, by the term “invention” merely for convenience andwithout intending to voluntarily limit the scope of this application toany single disclosure or inventive concept if more than one is, in fact,disclosed.

The embodiments illustrated herein are described in sufficient detail toenable those skilled in the art to practice the teachings disclosed.Other embodiments may be used and derived therefrom, such thatstructural and logical substitutions and changes may be made withoutdeparting from the scope of this disclosure. The Detailed Description,therefore, is not to be taken in a limiting sense, and the scope ofvarious embodiments is defined only by the appended claims, along withthe full range of equivalents to which such claims are entitled.

As used herein, the term “or” may be construed in either an inclusive orexclusive sense. Moreover, plural instances may be provided forresources, operations, or structures described herein as a singleinstance. Additionally, boundaries between various resources,operations, modules, engines, and data stores are somewhat arbitrary,and particular operations are illustrated in a context of specificillustrative configurations. Other allocations of functionality areenvisioned and may fall within a scope of various embodiments of thepresent disclosure. In general, structures and functionality presentedas separate resources in the example configurations may be implementedas a combined structure or resource. Similarly, structures andfunctionality presented as a single resource may be implemented asseparate resources. These and other variations, modifications,additions, and improvements fall within a scope of embodiments of thepresent disclosure as represented by the appended claims. Thespecification and drawings are, accordingly, to be regarded in anillustrative rather than a restrictive sense.

Although an embodiment has been described with reference to specificexample embodiments, it will be evident that various modifications andchanges can be made to these embodiments without departing from thebroader spirit and scope of the present disclosure. Accordingly, thespecification and drawings are to be regarded in an illustrative ratherthan a restrictive sense. The accompanying drawings that form a parthereof show, by way of illustration, and not of limitation, specificembodiments in which the subject matter can be practiced. Theembodiments illustrated are described in sufficient detail to enablethose skilled in the art to practice the teachings disclosed herein.Other embodiments can be utilized and derived therefrom, such thatstructural and logical substitutions and changes can be made withoutdeparting from the scope of this disclosure. This Detailed Description,therefore, is not to be taken in a limiting sense, and the scope ofvarious embodiments is defined only by the appended claims, along withthe full range of equivalents to which such claims are entitled.

Such embodiments of the inventive subject matter can be referred toherein, individually and/or collectively, by the term “invention” merelyfor convenience and without intending to voluntarily limit the scope ofthis application to any single invention or inventive concept if morethan one is in fact disclosed. Thus, although specific embodiments havebeen illustrated and described herein, it should be appreciated that anyarrangement calculated to achieve the same purpose can be substitutedfor the specific embodiments shown. This disclosure is intended to coverany and all adaptations or variations of various embodiments.Combinations of the above embodiments, and other embodiments notspecifically described herein, will be apparent to those of skill in theart upon reviewing the above description.

The Abstract of the Disclosure is provided to allow the reader toquickly ascertain the nature of the technical disclosure. It issubmitted with the understanding that it will not be used to interpretor limit the scope or meaning of the claims. In addition, in theforegoing Detailed Description, it can be seen that various features aregrouped together in a single embodiment for the purpose of streamliningthe disclosure. This method of disclosure is not to be interpreted asreflecting an intention that the claimed embodiments require morefeatures than are expressly recited in each claim. Rather, as thefollowing claims reflect, inventive subject matter lies in less than allfeatures of a single disclosed embodiment. Thus the following claims arehereby incorporated into the Detailed Description, with each claimstanding on its own as a separate embodiment.

What is claimed is:
 1. A system comprising: at least one hardwareprocessor; and a non-transitory computer-readable medium storingexecutable instructions that, when executed, cause the at least onehardware processor to perform operations comprising: configuring a firstnetworked site to adopt data from one or more other networked sitesdifferent from the first networked site; detecting new data on at leastone of the one or more other networked sites, the new data beingassociated with a data item on the at least one of the one or more othernetworked sites; determining that a record of the data item is beingstored on the first networked site; storing the new data from the atleast one of the one or more other networked sites on the firstnetworked site in association with the data item based on the detectingof the new data on the at least one of the one or more other networkedsites and the determining that a record of the data item is being storedon the first networked site; receiving, by the first networked site froma user on a computing device accessing the first networked site, arequest to submit a new review of a product; determining, by the firstnetworked site, that the user has previously submitted a review of theproduct on one of the one or more other networked sites; based on thedetermining that the user has previously submitted the review of theproduct on the one of the one or more other networked sites, preventing,by the first networked site, the user from submitting the new review ofthe product; and displaying a prompting on the first networked site forthe user to edit the previously submitted review based on thedetermining that the user has previously submitted the review of theproduct on the one of the one or more other networked sites.
 2. Thesystem of claim 1, wherein the first networked site and each one of theone or more other networked sites has a corresponding top-level domain,the top-level domain of each one of the one or more other networkedsites being different from the top-level domain of the first networkedsite.
 3. The system of claim 2, wherein the top-level domain of each oneof the one or more other networked sites corresponds to a differentcountry than the top-level domain of the first networked site.
 4. Thesystem of claim 1, wherein the operations further comprise: receiving,from a computing device of a user accessing the first networked site, arequest to view information about the data item; retrieving the new datastored on the first networked site in association with the data item;and displaying the retrieved new data on the first networked site. 5.The system of claim 4, wherein the operations further comprisedetermining a type of page on which the new data is displayed on the atleast one of the one or more other networked sites, the retrieved newdata being displayed on the same type of page on the first networkedsite.
 6. The system of claim 4, wherein the operations further comprise:determining a position in which to display the retrieved new data on thefirst networked site, the position being based at least in part on thenew data having originated from the at least one of the one or moreother networked sites; and displaying the retrieved new data in thedetermined position on the first networked site.
 7. The system of claim1, wherein the new data comprises a review of the product.
 8. The systemof claim 1, wherein the configuring the first networked site to adoptdata from the one or more other networked sites comprises: configuringthe first networked site to adopt data of a first type from the one ormore other networked sites; and configuring the first networked site notto adopt data of a second type from the one or more other networkedsites, the second type being different from the first type.
 9. Thesystem of claim 8, wherein the first type of data is a first type ofproduct review and the second type of data is a second type of productreview.
 10. A computer-implemented method comprising: configuring afirst networked site to adopt data from one or more other networkedsites different from the first networked site; detecting new data on atleast one of the one or more other networked sites, the new data beingassociated with a data item on the at least one of the one or more othernetworked sites; determining that a record of the data item is beingstored on the first networked site; storing the new data from the atleast one of the one or more other networked sites on the firstnetworked site in association with the data item based on the detectingof the new data on the at least one of the one or more other networkedsites and the determining that a record of the data item is being storedon the first networked site; receiving, by the first networked site froma user on a computing device accessing the first networked site, arequest to submit a new review of a product; determining, by the firstnetworked site, that the user has previously submitted a review of theproduct on one of the one or more other networked sites; based on thedetermining that the user has previously submitted the review of theproduct on the one of the one or more other networked sites, preventing,by the first networked site, the user from submitting the new review ofthe product; and displaying a prompting on the first networked site forthe user to edit the previously submitted review based on thedetermining that the user has previously submitted the review of theproduct on the one of the one or more other networked sites.
 11. Themethod of claim 10, wherein the first networked site and each one of theone or more other networked sites has a corresponding top-level domain,the top-level domain of each one of the one or more other networkedsites being different from the top-level domain of the first networkedsite.
 12. The method of claim 11, wherein the top-level domain of eachone of the one or more other networked sites corresponds to a differentcountry than the top-level domain of the first networked site.
 13. Themethod of claim 10, further comprising: receiving, from a computingdevice of a user accessing the first networked site, a request to viewinformation about the data item; retrieving the new data stored on thefirst networked site in association with the data item; and displayingthe retrieved new data on the first networked site.
 14. The method ofclaim 13, further comprising: determining a position in which to displaythe retrieved new data on the first networked site, the position beingbased at least in part on the new data having originated from the atleast one of the one or more other networked sites; and displaying theretrieved new data in the determined position on the first networkedsite.
 15. The method of claim 10, wherein the configuring the firstnetworked site to adopt data from the one or more other networked sitescomprises: configuring the first networked site to adopt data of a firsttype from the one or more other networked sites; and configuring thefirst networked site not to adopt data of a second type from the one ormore other networked sites, the second type being different from thefirst type.
 16. A non-transitory machine-readable storage medium storinga set of instructions that, when executed by at least one processor,causes the at least one processor to perform operations comprising:configuring a first networked site to adopt data from one or more othernetworked sites different from the first networked site; detecting newdata on at least one of the one or more other networked sites, the newdata being associated with a data item on the at least one of the one ormore other networked sites; determining that a record of the data itemis being stored on the first networked site; storing the new data fromthe at least one of the one or more other networked sites on the firstnetworked site in association with the data item based on the detectingof the new data on the at least one of the one or more other networkedsites and the determining that a record of the data item is being storedon the first networked site; receiving, by the first networked site froma user on a computing device accessing the first networked site, arequest to submit a new review of a product; determining, by the firstnetworked site, that the user has previously submitted a review of theproduct on one of the one or more other networked sites; based on thedetermining that the user has previously submitted the review of theproduct on the one of the one or more other networked sites, preventing,by the first networked site, the user from submitting the new review ofthe product; and displaying a prompting on the first networked site forthe user to edit the previously submitted review based on thedetermining that the user has previously submitted the review of theproduct on the one of the one or more other networked sites.